[INFO] fetching crate pinar 0.1.0...
[INFO] fixing pinar-0.1.0 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] extracting crate pinar 0.1.0 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate pinar 0.1.0
[INFO] finished tweaking crates.io crate pinar 0.1.0
[INFO] tweaked toml for crates.io crate pinar 0.1.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate pinar 0.1.0 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 29 packages to latest compatible versions
[INFO] [stderr]       Adding pinar-derive v0.1.0 (available: v0.2.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded quote v1.0.46
[INFO] [stderr]   Downloaded pinar-napi-sys v0.1.0
[INFO] [stderr]   Downloaded pinar-derive v0.1.0
[INFO] [stderr]   Downloaded failure_derive v0.1.8
[INFO] [stderr]   Downloaded failure v0.1.8
[INFO] [stderr]   Downloaded unicode-xid v0.1.0
[INFO] [stderr]   Downloaded quote v0.6.13
[INFO] [stderr]   Downloaded proc-macro2 v0.4.30
[INFO] [stderr]   Downloaded syn v0.15.44
[INFO] [stderr]   Downloaded memchr v2.8.2
[INFO] [stderr]   Downloaded syn v2.0.118
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 4284ff72934350ccb35e64395b59bddd4dcac62be86c7a9e873b040117004413
[INFO] running `Command { std: "docker" "start" "4284ff72934350ccb35e64395b59bddd4dcac62be86c7a9e873b040117004413", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4284ff72934350ccb35e64395b59bddd4dcac62be86c7a9e873b040117004413" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4284ff72934350ccb35e64395b59bddd4dcac62be86c7a9e873b040117004413", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4284ff72934350ccb35e64395b59bddd4dcac62be86c7a9e873b040117004413" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking gimli v0.32.3
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]     Checking adler2 v2.0.1
[INFO] [stderr]     Checking memchr v2.8.2
[INFO] [stderr]     Checking rustc-demangle v0.1.27
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling pinar-napi-sys v0.1.0
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]     Checking addr2line v0.25.1
[INFO] [stderr]    Compiling pinar-derive v0.1.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking pinar v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the feature `core_intrinsics` is internal to the compiler or standard library
[INFO] [stdout]  --> src/lib.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![feature(core_intrinsics)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: using it is strongly discouraged
[INFO] [stdout]   = note: `#[warn(internal_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/classes.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::error::{JsError, Error};
[INFO] [stdout]   |                             ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/pinar_serde/ser.rs:43:48
[INFO] [stdout]    |
[INFO] [stdout] 43 |         formatter.write_str(std::error::Error::description(self))
[INFO] [stdout]    |                                                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/pinar_serde/de.rs:50:48
[INFO] [stdout]    |
[INFO] [stdout] 50 |         formatter.write_str(std::error::Error::description(self))
[INFO] [stdout]    |                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module.rs:24:35
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub(crate) functions: Vec<Box<CallbackHandler>>,
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub(crate) functions: Vec<Box<dyn CallbackHandler>>,
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module.rs:131:14
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fun: Box<Fn(A) -> R>
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fun: Box<dyn Fn(A) -> R>
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/error.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 |     cause: Box<JsError>,
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     cause: Box<dyn JsError>,
[INFO] [stdout]   |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/classes.rs:165:21
[INFO] [stdout]     |
[INFO] [stdout] 165 |     methods: Vec<Rc<ClassMethodHandler<C>>>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |     methods: Vec<Rc<dyn ClassMethodHandler<C>>>
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/classes.rs:186:23
[INFO] [stdout]     |
[INFO] [stdout] 186 |     method: Option<Rc<ClassMethodHandler<C>>>,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 186 |     method: Option<Rc<dyn ClassMethodHandler<C>>>,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/classes.rs:187:25
[INFO] [stdout]     |
[INFO] [stdout] 187 |     accessor: Option<Rc<ClassMethodHandler<C>>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 187 |     accessor: Option<Rc<dyn ClassMethodHandler<C>>>,
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/classes.rs:336:14
[INFO] [stdout]     |
[INFO] [stdout] 336 |     fun: Box<Fn(&C, A) -> R>,
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 336 |     fun: Box<dyn Fn(&C, A) -> R>,
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `core_intrinsics` is internal to the compiler or standard library
[INFO] [stdout]  --> src/lib.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![feature(core_intrinsics)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: using it is strongly discouraged
[INFO] [stdout]   = note: `#[warn(internal_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/classes.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::error::{JsError, Error};
[INFO] [stdout]   |                             ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/error.rs:103:27
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn as_fail(&self) -> &Fail;
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn as_fail(&self) -> &dyn Fail;
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/error.rs:107:27
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn as_fail(&self) -> &Fail {
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn as_fail(&self) -> &dyn Fail {
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/pinar_serde/ser.rs:43:48
[INFO] [stdout]    |
[INFO] [stdout] 43 |         formatter.write_str(std::error::Error::description(self))
[INFO] [stdout]    |                                                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/pinar_serde/de.rs:50:48
[INFO] [stdout]    |
[INFO] [stdout] 50 |         formatter.write_str(std::error::Error::description(self))
[INFO] [stdout]    |                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn as_js_error(&self) -> &JsError {
[INFO] [stdout]    |                                   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn as_js_error(&self) -> &dyn JsError {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/module.rs:24:35
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub(crate) functions: Vec<Box<CallbackHandler>>,
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub(crate) functions: Vec<Box<dyn CallbackHandler>>,
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/module.rs:131:14
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fun: Box<Fn(A) -> R>
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fun: Box<dyn Fn(A) -> R>
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/error.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 |     cause: Box<JsError>,
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     cause: Box<dyn JsError>,
[INFO] [stdout]   |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/classes.rs:165:21
[INFO] [stdout]     |
[INFO] [stdout] 165 |     methods: Vec<Rc<ClassMethodHandler<C>>>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |     methods: Vec<Rc<dyn ClassMethodHandler<C>>>
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/classes.rs:186:23
[INFO] [stdout]     |
[INFO] [stdout] 186 |     method: Option<Rc<ClassMethodHandler<C>>>,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 186 |     method: Option<Rc<dyn ClassMethodHandler<C>>>,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/classes.rs:187:25
[INFO] [stdout]     |
[INFO] [stdout] 187 |     accessor: Option<Rc<ClassMethodHandler<C>>>,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 187 |     accessor: Option<Rc<dyn ClassMethodHandler<C>>>,
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/classes.rs:336:14
[INFO] [stdout]     |
[INFO] [stdout] 336 |     fun: Box<Fn(&C, A) -> R>,
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 336 |     fun: Box<dyn Fn(&C, A) -> R>,
[INFO] [stdout]     |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         Fail::downcast_ref(self.cause.as_fail())
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |         <dyn Fail>::downcast_ref(self.cause.as_fail())
[INFO] [stdout]    |         ++++     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/error.rs:103:27
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn as_fail(&self) -> &Fail;
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn as_fail(&self) -> &dyn Fail;
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/error.rs:107:27
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn as_fail(&self) -> &Fail {
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn as_fail(&self) -> &dyn Fail {
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn as_js_error(&self) -> &JsError {
[INFO] [stdout]    |                                   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn as_js_error(&self) -> &dyn JsError {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         Fail::downcast_ref(self.cause.as_fail())
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |         <dyn Fail>::downcast_ref(self.cause.as_fail())
[INFO] [stdout]    |         ++++     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JsError`
[INFO] [stdout]  --> src/classes.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::error::{JsError, Error};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JsError`
[INFO] [stdout]  --> src/classes.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::error::{JsError, Error};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/lib.rs:149:10
[INFO] [stdout]     |
[INFO] [stdout] 149 | fn test9(args: ()) -> ABC {
[INFO] [stdout]     |          ^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s1`
[INFO] [stdout]    --> src/lib.rs:167:21
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn test12<'e>((env, s1, obj): (Env, JsString, JsObject)) -> JsString<'e> {
[INFO] [stdout]     |                     ^^ help: if this is intentional, prefix it with an underscore: `_s1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obj`
[INFO] [stdout]    --> src/lib.rs:167:25
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn test12<'e>((env, s1, obj): (Env, JsString, JsObject)) -> JsString<'e> {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/lib.rs:171:16
[INFO] [stdout]     |
[INFO] [stdout] 171 | fn test13<'e>((env, abc): (Env, ABC)) -> ABC {
[INFO] [stdout]     |                ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `testfn` is never used
[INFO] [stdout]   --> src/lib.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn testfn(fun: JsFunction) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `real`, `real2`, `other`, and `jsbox` are never used
[INFO] [stdout]    --> src/classes.rs:392:12
[INFO] [stdout]     |
[INFO] [stdout] 391 | impl SomeClass {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 392 |     pub fn real(&self, a: String) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub fn real2(&self, a: (String, i64)) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 398 |     pub fn other(&self, a: u64, b: u64) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 413 |     pub fn jsbox(&self, _args: Option<String>) -> Box<i64> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]    --> src/classes.rs:418:4
[INFO] [stdout]     |
[INFO] [stdout] 418 | fn test(env: Env) -> Result<()> {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `msg` is never read
[INFO] [stdout]   --> src/pinar_serde/ser.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct SerializeError {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 13 |     msg: String
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SerializeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/lib.rs:199:47
[INFO] [stdout]     |
[INFO] [stdout] 199 |                       napi_module_register(&mut MODULE_DESCRIPTOR);
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout] ...
[INFO] [stdout] 222 | / register_module!(sebastien, |module: ModuleBuilder| {
[INFO] [stdout] 223 | |     module.with_function("test1", test1)
[INFO] [stdout] 224 | |           .with_function("my_super_function", test2)
[INFO] [stdout] 225 | |           .with_function("my_other_function", test3)
[INFO] [stdout] ...   |
[INFO] [stdout] 243 | |           .build()
[INFO] [stdout] 244 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `register_module` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/status.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Fail, Debug)]
[INFO] [stdout]   |          ^---
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Fail` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Status`
[INFO] [stdout] 5 | pub enum Status {
[INFO] [stdout]   |          ------ `Status` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/status.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Fail, Debug)]
[INFO] [stdout]   |          ^---
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Display` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Status`
[INFO] [stdout] 5 | pub enum Status {
[INFO] [stdout]   |          ------ `Status` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_JsExternalError`
[INFO] [stdout] 32 | #[fail(display = "Null pointer on external data")]
[INFO] [stdout] 33 | pub struct JsExternalError;
[INFO] [stdout]    |            --------------- `JsExternalError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_JsExternalError`
[INFO] [stdout] 32 | #[fail(display = "Null pointer on external data")]
[INFO] [stdout] 33 | pub struct JsExternalError;
[INFO] [stdout]    |            --------------- `JsExternalError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:35:10
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_JsClassError`
[INFO] [stdout] 36 | pub enum JsClassError {
[INFO] [stdout]    |          ------------ `JsClassError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:35:10
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_JsClassError`
[INFO] [stdout] 36 | pub enum JsClassError {
[INFO] [stdout]    |          ------------ `JsClassError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_JsFunctionError`
[INFO] [stdout] 52 | pub enum JsFunctionError {
[INFO] [stdout]    |          --------------- `JsFunctionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_JsFunctionError`
[INFO] [stdout] 52 | pub enum JsFunctionError {
[INFO] [stdout]    |          --------------- `JsFunctionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:61:10
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Fail, Debug, Clone)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ArgumentsError`
[INFO] [stdout] 62 | pub enum ArgumentsError {
[INFO] [stdout]    |          -------------- `ArgumentsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:61:10
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Fail, Debug, Clone)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ArgumentsError`
[INFO] [stdout] 62 | pub enum ArgumentsError {
[INFO] [stdout]    |          -------------- `ArgumentsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/classes.rs:20:26
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn new_instance(env: &Env, args: Self::ArgsConstructor) -> Result<JsObject> {
[INFO] [stdout]    |                          ^^^^ the lifetime is elided here             ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn new_instance(env: &Env, args: Self::ArgsConstructor) -> Result<JsObject<'_>> {
[INFO] [stdout]    |                                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]   --> src/classes.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Box::<T>::from_raw(data as *mut T);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let _ = Box::<T>::from_raw(data as *mut T);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/objects/array.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn iter(&self) -> Result<JsArrayIterator> {
[INFO] [stdout]    |                 ^^^^^            ^^^^^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn iter(&self) -> Result<JsArrayIterator<'_, '_>> {
[INFO] [stdout]    |                                                 ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: feature `core_intrinsics` is declared but not used
[INFO] [stdout]  --> src/lib.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![feature(core_intrinsics)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> src/lib.rs:149:10
[INFO] [stdout]     |
[INFO] [stdout] 149 | fn test9(args: ()) -> ABC {
[INFO] [stdout]     |          ^^^^ help: if this is intentional, prefix it with an underscore: `_args`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s1`
[INFO] [stdout]    --> src/lib.rs:167:21
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn test12<'e>((env, s1, obj): (Env, JsString, JsObject)) -> JsString<'e> {
[INFO] [stdout]     |                     ^^ help: if this is intentional, prefix it with an underscore: `_s1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obj`
[INFO] [stdout]    --> src/lib.rs:167:25
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn test12<'e>((env, s1, obj): (Env, JsString, JsObject)) -> JsString<'e> {
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/lib.rs:171:16
[INFO] [stdout]     |
[INFO] [stdout] 171 | fn test13<'e>((env, abc): (Env, ABC)) -> ABC {
[INFO] [stdout]     |                ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `testfn` is never used
[INFO] [stdout]   --> src/lib.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn testfn(fun: JsFunction) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `real`, `real2`, `other`, and `jsbox` are never used
[INFO] [stdout]    --> src/classes.rs:392:12
[INFO] [stdout]     |
[INFO] [stdout] 391 | impl SomeClass {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 392 |     pub fn real(&self, a: String) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub fn real2(&self, a: (String, i64)) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 398 |     pub fn other(&self, a: u64, b: u64) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 413 |     pub fn jsbox(&self, _args: Option<String>) -> Box<i64> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]    --> src/classes.rs:418:4
[INFO] [stdout]     |
[INFO] [stdout] 418 | fn test(env: Env) -> Result<()> {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `msg` is never read
[INFO] [stdout]   --> src/pinar_serde/ser.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct SerializeError {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 13 |     msg: String
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SerializeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/lib.rs:199:47
[INFO] [stdout]     |
[INFO] [stdout] 199 |                       napi_module_register(&mut MODULE_DESCRIPTOR);
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout] ...
[INFO] [stdout] 222 | / register_module!(sebastien, |module: ModuleBuilder| {
[INFO] [stdout] 223 | |     module.with_function("test1", test1)
[INFO] [stdout] 224 | |           .with_function("my_super_function", test2)
[INFO] [stdout] 225 | |           .with_function("my_other_function", test3)
[INFO] [stdout] ...   |
[INFO] [stdout] 243 | |           .build()
[INFO] [stdout] 244 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `register_module` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/status.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Fail, Debug)]
[INFO] [stdout]   |          ^---
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Fail` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Status`
[INFO] [stdout] 5 | pub enum Status {
[INFO] [stdout]   |          ------ `Status` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/status.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Fail, Debug)]
[INFO] [stdout]   |          ^---
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Display` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Status`
[INFO] [stdout] 5 | pub enum Status {
[INFO] [stdout]   |          ------ `Status` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_JsExternalError`
[INFO] [stdout] 32 | #[fail(display = "Null pointer on external data")]
[INFO] [stdout] 33 | pub struct JsExternalError;
[INFO] [stdout]    |            --------------- `JsExternalError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_JsExternalError`
[INFO] [stdout] 32 | #[fail(display = "Null pointer on external data")]
[INFO] [stdout] 33 | pub struct JsExternalError;
[INFO] [stdout]    |            --------------- `JsExternalError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:35:10
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_JsClassError`
[INFO] [stdout] 36 | pub enum JsClassError {
[INFO] [stdout]    |          ------------ `JsClassError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:35:10
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_JsClassError`
[INFO] [stdout] 36 | pub enum JsClassError {
[INFO] [stdout]    |          ------------ `JsClassError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_JsFunctionError`
[INFO] [stdout] 52 | pub enum JsFunctionError {
[INFO] [stdout]    |          --------------- `JsFunctionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_JsFunctionError`
[INFO] [stdout] 52 | pub enum JsFunctionError {
[INFO] [stdout]    |          --------------- `JsFunctionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:61:10
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Fail, Debug, Clone)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ArgumentsError`
[INFO] [stdout] 62 | pub enum ArgumentsError {
[INFO] [stdout]    |          -------------- `ArgumentsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:61:10
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Fail, Debug, Clone)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ArgumentsError`
[INFO] [stdout] 62 | pub enum ArgumentsError {
[INFO] [stdout]    |          -------------- `ArgumentsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/classes.rs:20:26
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn new_instance(env: &Env, args: Self::ArgsConstructor) -> Result<JsObject> {
[INFO] [stdout]    |                          ^^^^ the lifetime is elided here             ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn new_instance(env: &Env, args: Self::ArgsConstructor) -> Result<JsObject<'_>> {
[INFO] [stdout]    |                                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]   --> src/classes.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Box::<T>::from_raw(data as *mut T);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let _ = Box::<T>::from_raw(data as *mut T);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/objects/array.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn iter(&self) -> Result<JsArrayIterator> {
[INFO] [stdout]    |                 ^^^^^            ^^^^^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn iter(&self) -> Result<JsArrayIterator<'_, '_>> {
[INFO] [stdout]    |                                                 ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: feature `core_intrinsics` is declared but not used
[INFO] [stdout]  --> src/lib.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![feature(core_intrinsics)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.79s
[INFO] [stderr] crater-edition-check: all finished
[INFO] running `Command { std: "docker" "inspect" "4284ff72934350ccb35e64395b59bddd4dcac62be86c7a9e873b040117004413", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4284ff72934350ccb35e64395b59bddd4dcac62be86c7a9e873b040117004413", kill_on_drop: false }`
[INFO] [stdout] 4284ff72934350ccb35e64395b59bddd4dcac62be86c7a9e873b040117004413
